package com.tanhua.model.vo;

import com.tanhua.model.domain.UserInfo;
import com.tanhua.model.mongo.Movement;
import com.tanhua.model.mongo.Question;
import com.tanhua.model.mongo.Soul;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.bson.types.ObjectId;
import org.springframework.beans.BeanUtils;
import org.springframework.util.StringUtils;

import java.io.Serializable;
import java.text.SimpleDateFormat;
import java.util.Collections;
import java.util.Date;
import java.util.List;

/**
 * 测试灵魂的，试卷列表的vo,对象
 */

@Data
@NoArgsConstructor
@AllArgsConstructor
public class SoulVo implements Serializable {

    private String id; //问卷编号
    private String name; //问卷名称
    private String cover; //问卷封面的url地址
    private String level; //问卷级别（初级,中级,高级）
    private Integer star; //问卷星别（例如：2颗星，3颗星，5颗星）

    private List<QuestionVo> questions = Collections.emptyList(); //试题列表

    private Integer isLock; //问卷是否锁住（0解锁，1锁住）
    private String reportId; //问卷级别（初级,中级,高级）


    public static SoulVo init(Soul soul, List<QuestionVo> questions) {
        SoulVo vo = new SoulVo();
        //拷贝soul的基本属性
        BeanUtils.copyProperties(soul,vo);
        //设置id
        vo.setId(soul.getId().toHexString());
        //设置试题列表
        vo.setQuestions(questions);

        return vo;
    }
}